The increased deployment and popularity of cloud-based applications and services running on computing clusters of physical and virtual machines has significantly complicated configuration management tasks, such as provisioning software, deploying software patches, upgrading servers, or the like. Currently, system administrators may employ a variety of ad hoc procedures to perform configuration management, but for large machine clusters these ad hoc procedures may be inadequate. The inadequacies of ad hoc configuration management procedures may jeopardize the operations of critical cloud-based services. For example, if installing a piece of software depends on the previous installation of another piece of software, the system may error out if the previous software was not completely installed. This error may result in extended/unknown downtime for critical systems while a system administrator attempts to determine the cause of the error. It is with respect to these considerations and others that the present invention has been made.